1
Ruby 标量类型基础
AI035Lesson 3
00:00

在优雅的 Ruby 世界中, 标量类型 是逻辑不可分割的基本单元。与存储集合的容器不同,像 IntegerFloat 这样的标量代表单一且精确的值。这些类型继承自 Numeric 类,继承了强大的数学方法基因。

弹性整数

Ruby 使用精妙的内存管理机制。它区分 Fixnum (硬件优化范围内的整数)和 Bignum (任意精度整数)。在 64 位系统上,分界线位于 $-2^{62}$ 和 $2^{62} - 1$ 之间。

当计算结果超出这些边界时,Ruby 内部算法会执行一次 静默转换,通过可变长度的短整数重新分配内存。这能保护开发者免受低级语言中常见的 整数溢出 之苦。

NumericIntegerFloatFixnum(原生)-2⁶² 至 2⁶²-1Bignum(弹性)可变长度自动转换

与标量交互

标量并非被动存在;它们会响应诸如 .abs 等方法,并通过迭代器参与函数式流程。为了严格验证,使用 Integer(object) 方法可确保只有数值兼容的数据进入你的逻辑,从而防止非法输入破坏系统。

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>